package com.sky5.servlet;

import com.sky5.bean.NewsBean;
import com.sky5.dao.NewsDao;

import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;

/**
 * 1. 接收post网址 /newsAdd.jsp
 * 2. 接收到到传递过来的新闻参数 新闻标题 新闻内容
 * 3. 完成新闻的添加
 * 4. 跳转到其他页面
 */
@WebServlet("/newsAdd.jsp")
public class NewsAddServlet extends HttpServlet {

    @Override
    protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        req.setCharacterEncoding("UTF-8");
        // 会话中获取管理员昵称
        String user =  (String) req.getSession().getAttribute("User");// 获取会话
        if (user == null || user.equals("")) {
            resp.sendRedirect("login.jsp");//没登陆 跳转到登录页面
            return;
        }
        String newsTitle = req.getParameter("NewsTitle");
        String newsContent = req.getParameter("NewsContent");
        NewsBean newsBean = new NewsBean();// 实例化新闻对象
        newsBean.setNewsTitle(newsTitle);// 设置新闻标题
        newsBean.setNewsContent(newsContent);// 设置新闻内容
        newsBean.setAdminName(user);
        NewsDao newsDao = new NewsDao();//实例化 新闻DAO
        int result= newsDao.add(newsBean);//调用添加方法 传递新闻对象
        // 在Servlet有网页重定向功能 可以将页面跳转到指定位置
        if(result>0){
            resp.sendRedirect("news.jsp");
        }else{
            req.getRequestDispatcher("WEB-INF/error.jsp").forward(req, resp);
        }
    }
}
